importProjectContext

# ARGS
set projectTest [file join $projectRoot test]
sourceDir [file join $projectRoot src]
if {[llength [set testCases $argv]] == 0} {
    sourceDir $projectTest
} else {
    foreach f $testCases { source [file join $projectTest $f] }
}

# TEST
set projectName [file tail $projectRoot]
foreach p [lsort [info procs ::test[string toupper $projectName 0]::*]] {
    if {[string first \* $p] != -1} { continue }
    if [catch $p result] {
        ::contrib::log::info "\[$p\] Failed caused by:$result\n*** TRACE ***\n$errorInfo"
    } else {
        ::contrib::log::info "\[$p\] Succeeded\n$result"
    }
}